package com.eec.test.AopTest.testAspect;

import com.eec.AOP.annotation.*;
import com.eec.AOP.proceedingJoinPoint.ProceedingJoinPoint;
import com.eec.spring.ioc.annotation.Component;

/**
 * @author LeeC
 * @description
 * @date 2025/8/15
 * @PACKAGE_NAME com.eec.AOP.Test
 */
@Aspect
@Component
public class AspectTestOne {
    @Pointcut("com.eec.test.AopTest.annotation.WantProxyObjectOne")
    public void pointcut(){}

    @After("pointcut()")
    public void After()
    {
        System.out.println("after");
    }

    @Before("pointcut()")
    public void Before()
    {
        System.out.println("Before");
    }

    @Around("pointcut()")
    public Object Around(ProceedingJoinPoint joinPoint) throws Throwable {
        System.out.println("around --- before");
        Object proceed = joinPoint.proceed();
        System.out.println("around --- after");
        return proceed;
    }
}

